std::literals::chrono_literals:: operator""y
|
Определено в заголовочном файле
<chrono>
|
||
|
constexpr
std::
chrono
::
year
operator
""
y
(
unsigned
long
long
y
)
noexcept
;
|
(начиная с C++20) | |
Формирует литерал std::chrono::year , представляющий год в пролептическом григорианском календаре .
Содержание |
Параметры
| y | - | значение года |
Возвращаемое значение
Объект
std::chrono::year
, инициализированный значением
int
(
y
)
. Если значение
y
не находится в диапазоне
[
-
32767
,
32767
]
, сохранённое значение не определено.
Возможная реализация
constexpr std::chrono::year operator""y(unsigned long long y) noexcept { return std::chrono::year(static_cast<int>(y)); } |
Примечания
Этот оператор объявлен в пространстве имён std :: literals :: chrono_literals , где и literals , и chrono_literals являются встроенными пространствами имён . Доступ к этому оператору можно получить с помощью:
- using namespace std :: literals ,
- using namespace std :: chrono_literals , или
- using namespace std :: literals :: chrono_literals .
Кроме того, в пространстве имён std :: chrono директива using namespace literals :: chrono_literals ; предоставляется стандартной библиотекой , так что если программист использует using namespace std :: chrono ; для получения доступа к классам в библиотеке chrono , соответствующие литеральные операторы также становятся видимыми.
Пример
#include <chrono> #include <iostream> int main() { using namespace std::literals; std::cout << int(2020y) << '\t' << 2020y << '\n' << int(-220y) << '\t' << -220y << '\n' << int(3000y) << '\t' << 3000y << '\n' << int(32768y) << '\t' << 32768y << '\n' // unspecified << int(65578y) << '\t' << 65578y << '\n'; // unspecified }
Возможный вывод:
2020 2020 -220 -0220 3000 3000 -32768 -32768 is not a valid year 42 0042
Смотрите также
создает объект
year
(публичная функция-член
std::chrono::year
)
|